package com.qihunet.springbootjwt.constant;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 定义系统中用到的Redis键
 */
public class RedisKey {
    static SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");

    private static String currentDate = simpleDateFormat.format(new Date());

    /**
     * 更新下发结果标记
     */
    public static final String UPDATE_PAY_RESULT = "UPDATE_PAY_RESULT" ;

    /**
     * 休眠拉取订单请求标记
     */
    public static final String SLEEP_LOAD_ORDER_TAG = "SLEEP_LOAD_ORDER_TAG";

    /**
     * 没有过期的Token池
     */
    public static final String LOGIN_USER_TOKEN = "LOGIN_USER_TOKEN";

    /**
     * 登录错误标记池
     */
    public static final String LOGIN_LIMIT_POOL = "LOGIN_LIMIT_POOL";

    /**
     * 注销池
     */
    public static final String LOGOUT_USER = currentDate + "LOGOUT_USER";


    /**
     * 存储access_token 信息
     */
    public static final String API_BASIC_AUTH = "API_BASIC_AUTH";

    /**
     * 图片验证码
     */
    public static final String CAPTCHA = "CAPTCHA";

    /**
     * 添加修改提现账户手机验证码
     */
    public static final String SMS_WITHDRAW_CHANGE_CODE = "SMS_WITHDRAW_CHANGE_CODE";

    /**
     * 添加修改提现账户手机验证码标识
     */
    public static final String SMS_WITHDRAW_CHANGE_CODE_TAG = "SMS_WITHDRAW_CHANGE_CODE_TAG";

    /**
     * 注册短信验证码
     */
    public static final String SMS_REGISTER_CODE = "SMS_REGISTER_CODE";

    /**
     * 修改注册手机号短信验证码
     */
    public static final String SMS_MOBILE_CHANGE_CODE = "SMS_MOBILE_CHANGE_CODE";

    /**
     * 忘记密码短信验证码
     */
    public static final String SMS_FORGET_PWD_CODE = "SMS_FORGET_PWD_CODE";

    /**
     * 注册短信验证码标识
     */
    public static final String SMS_REGISTER_CODE_TAG = "SMS_REGISTER_CODE_TAG";

    /**
     * 忘记密码短信验证码标识
     */
    public static final String SMS_FORGET_PWD_CODE_TAG = "SMS_FORGET_PWD_CODE_TAG";
    /**
     * 修改注册手机号短信验证码标识
     */
    public static final String SMS_MOBILE_CHANGE_CODE_TAG = "SMS_MOBILE_CHANGE_CODE_TAG";

    /**
     * 短信验证码校验成功标识
     */
    public static final String SMS_CHECK_SUCCESS_TAG = "SMS_CHECK_SUCCESS_TAG";

    /**
     * 添加提现账户出错
     */
    public static final String SMS_ADD_WITHDRAW_ACCOUNT_ERROR = "SMS_ADD_WITHDRAW_ACCOUNT_ERROR";

    /**
     * 提现成功后发送成功短信
     */
    public static final String WITHDRAW_SUCCESS_NOTIFY_SMS = "WITHDRAW_SUCCESS_NOTIFY_SMS";

    /**
     * 上传文件
     */
    public static final String FILE_UPLOAD = "FILE_UPLOAD";

    /**
     * API 请求记录前缀
     */
    public static final String API_HANDLE_PREFIX = "API_HANDLE_PREFIX";

    /**
     * 对账次数记录前缀
     */
    public static final String CHECK_ACCOUNT_PREFIX = "CHECK_ACCOUNT_PREFIX";

    /**
     * 下发文件记录前缀
     */
    public static final String BATCH_PAY_PREFIX = "BATCH_PAY_PREFIX";
    /**
     * 生成提现批次信息
     */
    public static final String birth_withdraw_batch_data = "birth_withdraw_batch_data";

    /**
     * 下发轮询结果前缀
     */
    public static final String BATCH_PAY_RESULT_PREFIX = "BATCH_PAY_RESULT_PREFIX";
    
    
    /**
     * 查询交易更新至Payzero的情况，若发现未发送的情况，应补发之
     */
    public static final String CHECK_TRAN_SEND_TO_PAYZERO_STATUS = "CHECK_TRAN_SEND_TO_PAYZERO_STATUS";
    
    /**
     * 汇总机构交易成功金额信息
     */
    public static final String SUMMARIZING_AGENT_ACCOUNT_TRANSACTION_REPORT_DATA = "SUMMARIZING_AGENT_ACCOUNT_TRANSACTION_REPORT_DATA";
    /**
     * 汇总机构入账成功金额信息
     */
    public static final String SUMMARIZING_AGENT_INCOME_REPORT_DATA = "SUMMARIZING_AGENT_INCOME_REPORT_DATA";
    /**
     * 根据店铺编码生成订单明细信息
     */
    public static final String BIRTH_ORDER_ITEM_BY_STORE_CODE = "BIRTH_ORDER_ITEM_BY_STORE_CODE";

    /**
     * 创建店铺给账户提供方
     */
    public static  final String PSP_STORE = "PSP_STORE";

    //结汇文件编号前缀
    public static final String BALANCE_REPORT_CODE_PREFIX = "BALANCE_REPORT_CODE_PREFIX";
    //同步订单信息
    public static final String SYNC_AMAZONE_ORDER_INFO = "SYNC_AMAZONE_ORDER_INFO";

    //MQ 未成功发送信息
    public static final String MQ_DELAYED_MESSAGE = "MQ_DELAYED_MESSAGE";

    //MQ 未成功发送信息 标记
    public static final String MQ_DELAYED_MESSAGE_TAG = "MQ_DELAYED_MESSAGE_TAG";

    //更新账户信息标记
    public static final String UPDATE_ACCOUNT_INFO_TAG = "UPDATE_ACCOUNT_INFO_TAG";

    //生成结汇文件标记
    public static final String CREATE_BALANCE_REPORT_FILE_TAG = "CREATE_BALANCE_REPORT_FILE_TAG";

    //更新资金池标记
    public static final String UPDATE_CAPITAL_POOL_TAG = "UPDATE_CAPITAL_POOL_TAG";

    public static final String AUTO_COUNT = "AUTO_COUNT";

    //更新入账结果标记
    public static final String update_account_transaction_income_success = "update_account_transaction_income_success";

    /**
     * 锁定收款垫资标记
     */
    public static final String add_sign_by_income_batch = "add_sign_by_income_batch";

    //更新入账结果标记
    public static final String update_account_transaction_income_success_auto = "update_account_transaction_income_success_auto";

    //待银行入账提现批次
    public static final String ACCOUNT_CONFIRM_BY_WITHDRAW = "account_confirm_by_withdraw";

    //超级号码池
    public static final String SUPER_MOBILE_POOL = "super_mobile_pool";

    /**
     * 锁定KYC提交
     */
    public static final String LOCK_KYC_TO_PSP = "LOCK_KYC_TO_PSP";

    /**
     * 自动预核销订单信息
     */
    public static final String AUTO_USE_BY_INCOME ="auto_use_by_income";
}
